// src/components/TimelineContentRow.ts
// 假设这些类型已经存在或您需要在此处定义它们

export type ClipType = 'text' | 'sticker' | 'background' | 'video' | 'audio' | 'narration';

export interface BaseClipItem {
    id: string; // Unique identifier for the clip
    start: number; // Start time in milliseconds
    duration: number; // Duration in milliseconds
}

export interface TimelineClipItem extends BaseClipItem {
    type: 'text' | 'sticker' | 'background' | 'audio' | 'narration';
    content: string; // Text content, sticker URL, audio waveform data, narration text
    color?: string; // Background color for the clip
    thumbnailUrl?: string; // For sticker previews, or audio waveform image
    audio_content?: string; // Optional text content for audio clips
}

export interface VideoSourceData extends BaseClipItem {
    type: 'video';
    src: string; // Video URL
    content: string;
    thumbnailUrl?: string; // Thumbnail for video preview
}
